//
//  UIImage+Scale.swift
//  30.照片选择器-UI搭建
//
//  Created by Apple on 15/12/7.
//  Copyright © 2015年 wdd. All rights reserved.
//

import UIKit

extension UIImage {
    
    /// 等比例缩放图片
    func scaleImage() -> UIImage {
        // 等比例缩放图片,图片的宽度等于 300
        let newWidth: CGFloat = 300
        
        // 当图片宽度小于300时,不需要缩放
        if size.width < newWidth {
            return self
        }
        
        // 等比例缩放,宽度等于300
        // 缩放后的高度 / 缩放后的宽度 = 缩放前的高度 / 缩放前的宽度
        let newHeight = newWidth * size.height / size.width
        
        let newSize = CGSize(width: newWidth, height: newHeight)
        
        // 将大图缩小
        // 开启一个Image上下文(画画的画板)
        UIGraphicsBeginImageContext(newSize)
        
        // 将self画到画板上面
        self.drawInRect(CGRect(origin: CGPointZero, size: newSize))
        
        // 获取画好的图片
        let newImage = UIGraphicsGetImageFromCurrentImageContext()
        
        // 关闭上下文
        UIGraphicsEndImageContext()
        
        return newImage
    }
}
